package com.hopu.mapper;

import com.hopu.entity.MyRole;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;
import org.apache.ibatis.annotations.Update;

import java.util.List;

/**
 * @Package: com.hopu.mapper
 * @ClassName: MyRoleMapper
 * @Author: xiaoBao
 * @CreateTime: 2020/10/30 16:31
 * @Description:【岗位信息（角色信息）Mapper动态接口（持久层）】
 */
public interface MyRoleMapper {
    /**
     * findAllRoleInfo 【查询所有角色信息：1、实现显示岗位所有信息列表；2、实现员工信息列表—“添加员工”下拉框所有角色信息数据回显（只取jid和jname）】
     * @return  将查询到的所有角色信息返回给服务层。
     */
    @Select("SELECT * FROM myjs")
    List<MyRole> findAllRoleInfo();


    /**
     * findRole 【查询用户名称是否存在（或根据Id查询一条岗位信息，实现修改弹窗的数据回显）】
     * @param myRole 角色名称；
     * @return 将查询结果返回给服务层。
     */
    @Select("SELECT * FROM myjs WHERE jname = #{jname} OR jid = #{jid}")
    MyRole findRole(MyRole myRole);


    /**
     * addRole 【添加一条岗位信息（角色名称）】
     * @param myRole 角色名称；
     * @return 将执行影响的行数信息返回给服务层判断。
     */
    @Insert("INSERT INTO myjs(jname)VALUES(#{jname})")
    Integer addRole(MyRole myRole);


    /**
     * updateRole 【根据Id修改一条岗位信息（角色名称）】
     * @param myRole 角色名称、Id；
     * @return 将执行添加语句影响的行数结果返回给服务层进行判断。
     */
    @Update("UPDATE myjs SET jname = #{jname} WHERE jid = #{jid}")
    Integer updateRole(MyRole myRole);
}
